import request from '@/utils/request'
// 员工模块
// 获取部门 数据接口
// /company/department
// get

export const getDepartmentApi = (params) => {
  return request({
    url: '/company/department',
    method: 'get'
  })
}

// 获取员工列表接口
// departmentId：1  部门id
// keyword: 搜索关键字

// page:1:当前页码
// pagesize:当前每页的条数
export const getPersonApi = (params) => {
  return request({
    url: '/sys/user',
    method: 'get',
    params
  })
}

// 查看员工详情
export const getUserInfo = (id) => {
  return request({
    url: `/sys/user/${id}`,
    method: 'get'
  })
}

// 获取角色列表接口
export const getRoleList = () => {
  return request({
    url: '/sys/role/list/enabled',
    method: 'get'
  })
}
// 分配角色接口
// id:当前员工id
// roleIds:[]//角色id数组
export const toRoleApi = (data) => {
  return request({
    url: '/sys/user/assignRoles',
    method: 'put',
    data
  })
}

// 删除人员接口
export const delUserApi = (id) => {
  return request({
    url: `/sys/user/${id}`,
    method: 'delete'
  })
}
// 上传文件的接口
// FormData()   append("key",文件数据包)
export const importUser = (data) => {
  return request({
    url: '/sys/user/import',
    method: 'post',
    // 上传类型的请求头  要设置 multipart/form-data
    // headers: { // header 提前发送到后端的 数据
    //   // 表单类型   name=1&age=2 对象序列化 == qs.stringify(obj)
    //   // 'Content-type': 'application/x-www-form-urlencoded'
    //   // json类型   {name:1,age:2}== qs.parse(str)
    //   //  'Content-type': 'application/json'
    //   // 文件数据包类型  file：二进制 multipart/form-data
    //   'Content-type': 'multipart/form-data; boundary=----'
    // },
    data
  })
}

// 导入员工数据接口
export function importEmployee(data) {
  return request({
    url: '/sys/user/batch',
    method: 'post',
    data // 员工列表数据的数组  //  [{name:1,age:2,phone:18888},{}]
  })
}
/**
 * 导出员工的excel
 * **/

export function exportEmployee() {
  return request({
    url: '/sys/user/export',
    // 改变接收数据的类型
    responseType: 'blob' // 使用blob接收二进制文件流
  })
}

/**
 * 下载员工导入模版
 * **/

export function  getExportTemplate() {
  return request({
    url: '/sys/user/import/template',
    responseType: 'blob' // 二进制文件流
  })
}

// 新增员工接口
// correctionTime:转正时间 "2024-11-29T16:00:00.000Z"
// timeOfEntry: "2024-09-10"  入职时间
// // departmentId  部门id 通过级联选择器 获取到数据
// formOfEmployment: 1 聘用形式   1 2
// mobile: "18777734444" 手机号
// staffPhoto: "" 默认传空
// username：用户名
// workNumber:  默认传空

export const addUserApi = (data) => {
  return request({
    url: '/sys/user',
    method: 'post',
    data
  })
}
/**
 * 更新员工
 * ***/

export function updateEmployee(data) {
  return request({
    url: `/sys/user/${data.id}`,
    method: 'put',
    data
  })
}

